package com.ruoyi.demo.service;

import java.util.List;
import com.ruoyi.demo.domain.AuctionRecord;
import com.ruoyi.demo.domain.dto.AuctionRecordDetailDTO;

/**
 * 竞拍记录Service接口
 * 
 * @author metaee
 * @date 2025-02-24
 */
public interface IAuctionRecordService 
{
    /**
     * 查询竞拍记录
     * 
     * @param recordId 竞拍记录主键
     * @return 竞拍记录
     */
    public AuctionRecord selectAuctionRecordByRecordId(Long recordId);

    /**
     * 查询竞拍记录列表
     * 
     * @param auctionRecord 竞拍记录
     * @return 竞拍记录集合
     */
    public List<AuctionRecord> selectAuctionRecordList(AuctionRecord auctionRecord);

    /**
     * 新增竞拍记录
     * 
     * @param auctionRecord 竞拍记录
     * @return 结果
     */
    public int insertAuctionRecord(AuctionRecord auctionRecord);

    /**
     * 修改竞拍记录
     * 
     * @param auctionRecord 竞拍记录
     * @return 结果
     */
    public int updateAuctionRecord(AuctionRecord auctionRecord);

    /**
     * 批量删除竞拍记录
     * 
     * @param recordIds 需要删除的竞拍记录主键集合
     * @return 结果
     */
    public int deleteAuctionRecordByRecordIds(Long[] recordIds);

    /**
     * 删除竞拍记录信息
     * 
     * @param recordId 竞拍记录主键
     * @return 结果
     */
    public int deleteAuctionRecordByRecordId(Long recordId);

    /**
     * 根据商品ID查询竞拍记录列表，包括用户信息
     * 
     * @param goodsId 商品ID
     * @return 竞拍记录详情集合
     */
    public List<AuctionRecordDetailDTO> selectAuctionRecordListByGoodsId(Long goodsId);
}
